<table class="table table-bordered">
    <thead>
        <tr>
            <th class="text-left" style="width: 20%">Key</th>
            <th class="text-left" style="width: 15%">Default</th>
            <th class="text-left" style="width: 65%">Description</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td><h5>mesos.constraints.hard.hostattribute</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>Constraints for task placement on Mesos based on agent attributes. Takes a comma-separated list of key:value pairs corresponding to the attributes exposed by the target mesos agents. Example: az:eu-west-1a,series:t2</td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.bootstrap-cmd</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>A command which is executed before the TaskManager is started.</td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.container.docker.force-pull-image</h5></td>
            <td style="word-wrap: break-word;">false</td>
            <td>Instruct the docker containerizer to forcefully pull the image rather than reuse a cached version.</td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.container.docker.parameters</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>Custom parameters to be passed into docker run command when using the docker containerizer. Comma separated list of "key=value" pairs. The "value" may contain '='.</td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.container.image.name</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>Image name to use for the container.</td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.container.type</h5></td>
            <td style="word-wrap: break-word;">"mesos"</td>
            <td>Type of the containerization used: “mesos” or “docker”.</td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.container.volumes</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>A comma separated list of [host_path:]container_path[:RO|RW]. This allows for mounting additional volumes into your container.</td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.cpus</h5></td>
            <td style="word-wrap: break-word;">0.0</td>
            <td>CPUs to assign to the Mesos workers.</td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.gpus</h5></td>
            <td style="word-wrap: break-word;">0</td>
            <td>GPUs to assign to the Mesos workers.</td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.hostname</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>Optional value to define the TaskManager’s hostname. The pattern _TASK_ is replaced by the actual id of the Mesos task. This can be used to configure the TaskManager to use Mesos DNS (e.g. _TASK_.flink-service.mesos) for name lookups.</td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.mem</h5></td>
            <td style="word-wrap: break-word;">1024</td>
            <td>Memory to assign to the Mesos workers in MB.</td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.taskmanager-cmd</h5></td>
            <td style="word-wrap: break-word;">"$FLINK_HOME/bin/mesos-taskmanager.sh"</td>
            <td></td>
        </tr>
        <tr>
            <td><h5>mesos.resourcemanager.tasks.uris</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>A comma separated list of URIs of custom artifacts to be downloaded into the sandbox of Mesos workers.</td>
        </tr>
        <tr>
            <td><h5>taskmanager.numberOfTaskSlots</h5></td>
            <td style="word-wrap: break-word;">1</td>
            <td>The number of parallel operator or user function instances that a single TaskManager can run. If this value is larger than 1, a single TaskManager takes multiple instances of a function or operator. That way, the TaskManager can utilize multiple CPU cores, but at the same time, the available memory is divided between the different operator or function instances. This value is typically proportional to the number of physical CPU cores that the TaskManager's machine has (e.g., equal to the number of cores, or half the number of cores).</td>
        </tr>
    </tbody>
</table>
